home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / serien / purity / nr.40 / memsize / memsize.anl < prev    next >
Text File  |  1994-12-13  |  7KB  |  213 lines

  1.                               .--------------.
  2.                               | MemSize V1.1 |
  3.                               `--------------'
  4.  
  5. 1. Allgemeines
  6.  
  7. MemSize V1.1 ist © copyright 9-11/94 by Stefan Grad.
  8.  
  9. Es wurde in PCQ-Pascal geschrieben und getestet.
  10.  
  11.  
  12. 2. Rechtliches
  13.  
  14. MemSize ist Freeware, d.h. jeder darf es unter den folgenden Auflagen frei
  15. benutzen und weiterkopieren:
  16.  
  17. - Es darf weder der Sourcecode noch der compilierte Programmcode verändert
  18.   werden.
  19.  
  20.   Es ist allerdings erlaubt, den Sourcecode als Ganzes oder Teile davon ver-
  21.   ändert oder im Originalzustand in eigene Programme einzubinden. Das daraus
  22.   entstandene Programm darf aber nicht den Namen "MemSize" tragen. Auch ein
  23.   Hinweis auf die Quelle der Routine (und eine Version des Programmes für
  24.   meine PD-Serie "GPD") wäre ganz nett.
  25.  
  26. - Es ist auch erlaubt, das Programm ohne Sourcecode und/oder Anleitung zu
  27.   verbreiten. Dem Sourcecode und/oder der Anleitung muß aber immer das Pro-
  28.   gramm beiliegen.
  29.  
  30. - Es ist verboten, MemSize auf kommerzielle Diskettenmagazine (ja, genau die
  31.   für 19,80 DM und so) und ähnlichem zu übernehmen.
  32.  
  33.   Sonstiger Vertrieb auf PD-Serien/via DFÜ ist erlaubt.
  34.  
  35. Achtung: Ich übernehme keinerlei Verantwortung über Schäden die direkt oder
  36.          indirekt aus der korrekten oder falschen Benutzung dieses Programmes
  37.          entstehen könnten!
  38.  
  39.  
  40. 3.Systemvoraussetzungen
  41.  
  42. Beliebiger Amiga mit OS1.2 (?) oder höher. Ich konnte es leider noch auf kei-
  43. nem Rechner mit OS1.2 testen; müßte aber laufen.
  44. Unter OS1.3 oder kleiner muß der CLI-Befehl "run" im C: Verzeichnis vorhanden
  45. sein.
  46.  
  47.  
  48. 4. Zweck
  49.  
  50. MemSize ist ein kleiner CLI-Befehl, der überprüft, ob eine bestimmte Spei-
  51. chermenge frei ist und startet dann, sofern dies (nicht) der Fall ist, ein
  52. bestimmtes Programm.
  53.  
  54.  
  55. 5. Benutzung (nur über CLI/Shell)
  56.  
  57. MemSize <MIN|MAX> <Size> <ProgramName>
  58.  
  59. Parameter:
  60.  
  61. <MIN>           deklariert die übergebene Speichergröße als Minimalwert
  62.  
  63. <MAX>           deklariert die übergebene Speichergröße als Maximalwert
  64.  
  65. <Size>          Minimaler/maximaler (je nach Übergabe von MIN oder MAX)
  66.                 freier Speicherplatz (in Bytes), damit <ProgramName> ge-
  67.                 startet wird.
  68.  
  69.                 <Size> darf maximal 8 Ziffern lang sein.
  70.                 Alle Stellen nach der 8. werden abgeschnitten.
  71.                 Sind voranstehende Stellen "0", so haben diese keine Auswir-
  72.                 kung. Es werden aber, auch wenn voranstehende Stellen "0"
  73.                 sind, alle Stellen nach der 8. abgeschnitten.
  74.                 Nicht-Ziffern werden intern aus der Zahl ausgeschnitten. Sie
  75.                 haben somit keine Auswirkung.
  76.  
  77.                 Allerdings scheint PCQ-Pascal manche ASCII-Zeichen als Leer-
  78.                 stellen zu interpretieren und somit das Ende des Parameters
  79.                 zu bewirken (z.B. MemSize MIN 100000ß0 ProgrammName versucht
  80.                 nicht etwa "ProgrammName" zu starten, sondern "0", was in
  81.                 den meisten Fällen nicht möglich sein wird und zur Fehler-
  82.                 meldung "Unknown Command 0" führen wird).
  83.  
  84. <ProgramName>   Der Name des Programmes, das gestartet werden soll, wenn zu-
  85.                 mindest/maximal der angegebene Speicherplatz frei ist.
  86.                 <ProgramName> darf maximal 70 Zeichen lang sein.
  87.  
  88.                 Soll dem auszuführenden Programm ein Parameter übergeben wer-
  89.                 den, muß dieses samt Parameter in Anführungszeichen gesetzt
  90.                 werden.
  91.  
  92. Wird "MemSize" ohne Parameter oder mit fehlerhaftem 1. Parameter aufgerufen
  93. (d.h. weder das Schlüsselwort MIN noch MAX wird übergeben), wird ein kleiner
  94. Info-Text ausgegeben.
  95. Ein Aufruf von "MemSize" mit fehlendem 2. und/oder 3. Parameter bewirkt gar-
  96. nix.
  97.  
  98. Beispiele:
  99.  
  100. 1> MemSize MIN 100000 Programm
  101.  
  102. Startet bei einem freien Speicherplatz von mindestens 100.000 Bytes das "Pro-
  103. gramm".
  104.  
  105. 2> MemSize MIN 10000a0 Programm
  106.  
  107. Wie 1>.
  108.  
  109. 3> MemSize MIN 0100000 "Programm"
  110.  
  111. Wie 1>
  112.  
  113. 4> MemSize MIN 000100000 "Programm"
  114.  
  115. Startet bei einem freien Speicherplatz von mindestens 10 KB (10000 Bytes) das
  116. "Programm". (Die letzte "0" wird abgeschnitten!)
  117.  
  118. 5> MemSize MIN 1500000 "Programm 1500k"
  119.  
  120. Startet bei einem freien Speicherplatz von mindestens 1500000 Bytes das "Pro-
  121. gramm" mit dem Übergabeparameter 1500k.
  122.  
  123. 6> MemSize ?
  124.  
  125. Gibt einen kleinen Info-Text aus.
  126.  
  127. 7> MemSize MAX 100000 Programm
  128.  
  129. Startet bei einem freien Speicherplatz von höchstens 100.000 Bytes das "Pro-
  130. gramm".
  131.  
  132. Ich denke, das genügt.
  133.  
  134.  
  135. 6. Danksagungen
  136.  
  137. Ich danke an dieser Stelle Patrick Quaid für seinen hervorragenden Pascal-
  138. Compiler "PCQ-Pascal" (V1.2b) sowie allen weiteren Autoren, deren Programme
  139. mir bei der Programmierung von MemSize behilflich waren.
  140.  
  141. Außerdem danke ich Bernd "Diesel" Künnen für die Pascal-PD-Serie "Purity"
  142. (die gibt´s übrigens bei mir im Abo...) und allerlei nützliche Tips zur Pro-
  143. grammierung in PCQ-Pascal,...
  144.  
  145. Schließlich möchte ich noch dem Autor von "Amiga Profi Know How (Teil 1: Sy-
  146. stemprogrammierung)" - Stefan Maelger - für dieses hervorragende und für je-
  147. den Programmierer empfehlenswerte Nachschlagewerk danken. (Data Becker)
  148.  
  149. Und natürlich wie immer allen, die ich vergessen habe...
  150.  
  151.  
  152. 7. Bekannte Fehlerquellen
  153.  
  154. Ich habe versucht, sämtliche Bedienfehler soweit wie möglich auszuschließen.
  155. Allerdings gibt es 3 kleine Probleme:
  156.  
  157. 1. Die Länge der Parameter ist begrenzt (<Size> auf 8 Zeichen und <Program-
  158.    Name> auf 70). Ich denke aber, daß diese Werte ausreichen.
  159.  
  160. 2. PCQ-Pascal sieht offenbar bestimmte ASCII-Codes, die keine Leerzeichen
  161.    sind, in Übergabeparametern trotzdem als solche an (darunter auch die im
  162.    Deutschen recht gebräuchlichen Zeichen ß,ä,ö,ü). In Programmnamen dürften
  163.    diese also normalerweise nicht vorkommen.
  164.  
  165.    Abhilfe schafft man, indem man den Programmnamen in Anführungszeichen
  166.    setzt. Somit ist also z.B. auch
  167.    MemSize 100000 "Schießspiel"
  168.    möglich.
  169.  
  170. 3. Leerstellen in Programmnamen sind nicht erlaubt - auch nicht in Anfüh-
  171.    rungszeichen! (scheint auch am PCQ zu liegen...)
  172.  
  173.  
  174. 8. Programmgeschichte
  175.  
  176. V1.0 (26.9.1994):
  177.  
  178. Erste Veröffentlichung.
  179.  
  180.  
  181. V1.1 (20.11.1994):
  182.  
  183. - neuer Parameter MIN | MAX:
  184.   bei Übergabe von MIN wird die übergebene Speichergröße als Minimalwert be-
  185.   handelt (wie in V1.0), bei Übergabe von MAX als Maximalwert (neu)
  186.  
  187. - verbesserter Infotext (kursiv wird nach USAGE wieder ausgeschaltet)
  188.  
  189. - Anzeige des Infotextes jetzt immer bei fehlerhaftem 1. Parameter, und nicht
  190.   mehr nur bei der Übergabe von "?" als 1. Parameter
  191.  
  192.  
  193. Neue Versionen...
  194.  
  195. ...erscheinen natürlich immer auf der PURITY - DER Serie für Pascal-Program-
  196. mierer - egal ob PCQ-, Kick- oder ??-Pascal...
  197.  
  198. Abos gibt´s übrigens bei mir!
  199.  
  200.  
  201. 9. Kontaktadresse
  202.  
  203. Natürlich bin ich immer offen für Verbesserungsvorschläge, Bug-Reports (?!?),
  204. Zuwendungen jeglicher Art (!!!), Interessenten an meiner DEUTSCHEN FD-Serie
  205. "GPD" (alles mit deutschen Anleitungen, Disks randvoll, aktuell,...), u.a.
  206.  
  207. Wer mich also kontaktieren will, schreibt bitte an:
  208.  
  209. Stefan Grad, Bahnhofstr. 37, 78588 Denkingen, Deutschland.
  210.  
  211. Wenn Ihr Antwort erhalten wollt, legt bitte ausreichend Rückporto bei!
  212.  
  213.